package com.huike.clues.service.impl;

import com.huike.clues.domain.TbClue;
import com.huike.clues.domain.TbClueTrackRecord;
import com.huike.clues.domain.vo.ClueTrackRecordVo;
import com.huike.clues.mapper.TbClueMapper;
import com.huike.clues.mapper.TbClueTrackRecordMapper;
import com.huike.clues.service.ITbClueTrackRecordService;
import com.huike.common.utils.SecurityUtils;
import com.huike.common.utils.bean.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.RequestParam;

import java.util.List;
/**
 * 线索跟进记录Service业务层处理
 * @date 2022-04-22
 */
@Service
public class TbClueTrackRecordServiceImpl implements ITbClueTrackRecordService {

    @Autowired
    TbClueMapper tbClueMapper;

    @Autowired
    TbClueTrackRecordMapper tbClueTrackRecordMapper;

    @Override
    public void addTrack(ClueTrackRecordVo tbClueTrackRecord) {
        /*分析:线索跟进涉及到两张表的操作,一部分是客户基本信息(已经存在,所以用修改操作),一部分是跟进信息(不存在,所以用新增操作)*/
        //1.因为修改操作的参数要求TbClue,所以将ClueTrackRecordVo拷贝到TbClue中
        TbClue tbClue = new TbClue();
        BeanUtils.copyProperties(tbClueTrackRecord,tbClue);
        tbClue.setId(tbClueTrackRecord.getClueId());
        tbClueMapper.updateTbClue(tbClue);
        //2.在跟进表中新增
        String username = SecurityUtils.getUsername();
        tbClueMapper.addTrackRecord(tbClueTrackRecord,username);
    }

    @Override
    public List<TbClueTrackRecord> getRecords(Long clueId){
        return tbClueTrackRecordMapper.selectTrack(clueId);
    }
}
